/**
 * 
 */
package com.gitee.ice1938.module.admin.filemanager.fun;

import java.util.List;

/**
 * @author ice1938@qq.com 2019-12-2 16:21:41
 *
 */
public interface FileManageSvc {
	public static final String KEY_FILE_MANAGE_REP = "_file_manage_rep";

	void init() throws Exception;

	/**
	 * 
	 * @param folderName
	 *            folderName like src/test/resources
	 * @param fileName
	 *            如： 图片_20171113083049.jpg(同文件夹下，文件名不可重复)
	 * @param data
	 *            文件内容字节
	 * @param fileLogastModified
	 *            最后修改时间
	 * @return 文件存储相对路径
	 */
	String addFile(String folderName, String fileName, byte[] data, long fileLogastModified, boolean isOverride);

	/**
	 * 
	 * @param fileId
	 * @return
	 */
	FileNode readFile(String filePath);

	FileNode readFile(String folderName, String fileName);

	void delete(String filePath);

	List<FileNode> list(String workspace, String relPath);
}
